#pragma once


#include "..\src-pool\Coords.h"
#include "..\src-pool\SphericalMercatorTiles.h"
#include <..\boost_1_51_0\boost\array.hpp>
#include "..\boost_1_51_0\boost\lexical_cast.hpp""
#define URDL_DISABLE_SSL 1
#define URDL_HEADER_ONLY 1
#include <..\libs\urdl-0.1\include\urdl\istream.hpp>

#include "..\opencv2\core\core.hpp"
#include "../opencv2/imgproc/imgproc.hpp"
#include "../opencv2/highgui/highgui.hpp" // u.U. Header weiterer Module

#ifdef _DEBUG
	#pragma comment(lib, "opencv_core242d.lib")
	#pragma comment(lib, "opencv_highgui242d.lib")
	#pragma comment(lib, "opencv_imgproc242d.lib") 
#else
	#pragma comment(lib, "opencv_core242.lib")
	#pragma comment(lib, "opencv_highgui242.lib")
	#pragma comment(lib, "opencv_imgproc242.lib") 
#endif



class TileDownloader
{
public:
	TileDownloader(void);
	~TileDownloader(void);
	static const int tileSize = 256;

	void  downloadMapTiles(double* array, int zoomLevel);

	
private:
	double maxLat, maxLon, minLat, minLon;
	int horizontalRows, verticalRows;

};

